<?

// Inicializar
/*********************************************************************************************************************/

include_once($_SERVER['DOCUMENT_ROOT'] . "/includes/loader.inc.php");

// Obtengo la sesion
$session = Session::getInstance();

// Y mi area
$mi_area = $_info['usuario']['id_area'];

// Instancio la clase
$modelos = new Modelos();

// Y las categorias
$faq_categorias = new DocCategorias();
$faq_categorias_listado = $faq_categorias->listar();



/* Recepcion de datos
=================================================================================================== */

// Datos que llegan directo por htaccess

// Tomo la accion
if ($_REQUEST['mode'])
	$accion = $_REQUEST['mode'];
else
	$accion = 'listar';

// Tomo los parametros
if ($_REQUEST['params']) {
	$params_string = addslashes($_REQUEST['params']);
	// Guardamos una copia del string de los filtros con guiones
	$params_guiones = $params_string;
	// Y obtenemos el array de parametros
	$params = Funciones::getparams($params_string);
}

// Tomo los datos
$data = $_REQUEST['data'];

// Tomo los datos
$id = $_REQUEST['id'];

// Tomo el mensaje, en caso de haberlo
$message = $session->getFlash();














/* Acciones
=================================================================================================== */


// AGREGAR

if ($accion == 'agregar') {
	$id = $modelos->agregar($data);
	if ($id) {
		$session->setFlash('El documento fue agregado');
		header("Location: /sic/docs/modelos/ver/$id");
		exit;
	}
}


// MODIFICAR

if ($accion == 'modificar') {
	if ($modelos->modificar($id, $data))
		$session->setFlash('El documento fue modificado');
	header("Location: /sic/docs/modelos/ver/$id");
	exit;
}


// ELIMINAR

if ($accion == 'eliminar') {
	if ($modelos->eliminar($id))
		$session->setFlash('El documento fue eliminado');
	header("Location: /sic/docs/modelos/");
	exit;
}





// LISTAR

if ($accion == 'listar') {

	// Listo los modelos permanentes
	$opciones = array(
			'filtros' => array("dm.temporal = 0"),
		);
	$modelos_listado = $modelos->listar($opciones);
	
	// Recorro el listado agregando informacion
	foreach($modelos_listado as $key_categoria => $value_categoria) {
		// Le agrego el nombre de categoria
		$modelos_listado[$key_categoria]['nombre_categoria'] = DocCategorias::nombre($key_categoria);
		// Recorro las subcategorias
		if ($value_categoria['categorias']) {
			foreach ($value_categoria['categorias'] as $key_subcategoria => $value_subcategoria) {
				// Le agrego el nombre de subcategoria
				$modelos_listado[$key_categoria]['categorias'][$key_subcategoria]['nombre_categoria'] = DocCategorias::nombre($key_subcategoria);
			}
		}
	}
	
	// Listo los modelos temporales
	$modelos_temporales = $modelos->listar_temporales();
	
}




// VER

if ($accion == 'ver') {
	if ($id) {
		$entrada = $modelos->get($id);		
		$entrada['autor'] = SSO::usuario($entrada['id_usuario']);
		$modelos_listado[0]['entradas'][] = $entrada; // No ordeno por id de categoria, fuerzo cero
	} else {
		$accion = 'listar';
	}
}


// EDITAR

if ($accion == 'editar') {
	// Chequeamos si estamos creando una novedad
	if (!$id) {
		$form = 'agregar';
	}
	// O editando una existente
	else {
		$form = 'modificar';
		$entrada = $modelos->get($id);
	}
}


// Incluyo la interfaz
include('includes/tpl/header.tpl.php');
include('includes/tpl/modelos.tpl.php');
include('includes/tpl/footer.tpl.php');
?>
